The invention relates to a method for determining a lane course of a lane with the aid of a multiplicity of recorded routes using a compensation curve, to a corresponding apparatus and to a corresponding computer program.
Some such driver assistance systems and, in particular, future driver assistance systems such as collision warning systems or advanced navigation systems require relatively accurate information relating to the geometry of road courses and, in particular, intersections and lane courses. The accuracy and up-to-dateness of this information is very important, in particular in safety-critical driver assistance systems.
The process of providing this information with the aid of a vehicle equipped with a precision positioning system, for example a particularly accurate GPS receiver, is very complicated in view of the large number of intersections.
Many of the modern vehicles have a simple GPS receiver. However, these GPS receivers provide only comparatively noisy measurements and do not provide sufficient accuracy to infer the exact course of a lane from the recordings of a route.
In the publication “Exploiting are splines for digital maps”, 14th International Conference on Intelligent Transportation Systems (ITSC), 2011 by A. Schindler et al., so-called “arc splines” are used to represent lanes. However, sorted and accurate position determinations, which are not reliably provided by simple GPS receivers, are required for the method presented there.
In the field of image processing, the calculation of a “B-spline” curve in order to approximate a noisy point cloud is known and is described, for example, in the publication “Fitting b-spline curves to point clouds by squared distance minimization”, ACM Transactions on graphics, 2004 by W. Wang et al.
An object of the invention is to determine a lane course on the basis of a multiplicity of noisy recorded routes for a road section.
In one aspect, a method for determining a lane course of a lane with the aid of a multiplicity of recorded routes using a compensation curve, each route of the multiplicity of routes comprising individual position indications of the vehicle in the order of passing during the respective journey, comprises the following: selecting a route from the multiplicity of routes; determining the number of checkpoints for the compensation curve on the basis of the selected route; determining an initial compensation curve on the basis of the number of checkpoints and the selected route from the multiplicity of routes; repeating the following step until an abort criterion has been satisfied: determining a new compensation curve using the previously determined compensation curve and individual position indications of the routes of the multiplicity of routes, the process of determining the new compensation curve being independent of the order of position indications in one of the respective routes and being independent of the fact that a position determination used is assigned to a route from the multiplicity of routes; outputting the compensation curve determined last as the lane course. The abort criterion may be a predefined number of repetitions, for example 3 or 4, or the specification of a minimum difference between the respectively calculated compensation curves. A course of a lane or of a journey of a vehicle describes the spatial arrangement, possibly only in two dimensions, of the lane or of the locations occupied by a vehicle.
The method makes it possible to use a multiplicity of routes with noisy position indications, the individual accuracy of which would be insufficient to create accurate lane courses, to automatically determine a more accurate course of a lane. For this purpose, a plurality of routes are considered together and the inaccuracies on account of the noise are therefore reduced. In this case, it does not matter whether the noise is caused by the position measurement or by varying driver behavior. In this manner, recordings from vehicles with simple GPS receivers can be used to generate more accurate lane courses than have been recorded by the simple GPS receivers. Various crossings by different drivers can likewise be used to determine a lane course representative of an average driver.
One advantage of determining lane courses with the aid of routes which have actually been traveled is that the actual routes may be more relevant to driver assistance systems than the course of lanes which has been determined on the basis of highly accurate measurements. This is because drivers do not always drive in the exact center of a lane, for example on bends. Driver assistance systems can then better determine possible collision points on the basis of the lane courses which have actually been traveled and can also better predict the driver's intention if this prediction is based on position evaluations with respect to lanes.
The method is suitable for determining the lane course both at intersections and for road sections without intersections. The course of bends, for example, may be of interest on these road sections. The course of the lane is typically considered in the plane; the lanes may also be determined in all three spatial dimensions at complex intersections with flyovers. The method is advantageous, in particular, when each road has only one lane in one direction and/or when only one lane is available for each possible maneuver (passing through, turning left/right). If a road comprises two or more parallel lanes for the same possible maneuver, the position indications of the vehicles will have accumulations in the center of each lane. These accumulations can be used to distinguish the routes running on parallel lanes.
The method is preferably carried out in a central stationary server which has previously received the multiplicity of routes of vehicles having simple GPS receivers. The individual position indications are consecutively numbered with the index k irrespective of the affiliation with routes and are referred to as Mk.
A B-spline curve P(t) is advantageously used as the compensation curve. This parameterization of the lane course provides the advantage that, in addition to the spatial course of the lane, it also describes a curvature course which is constant in sections and is advantageous for use in assistance systems. A B-spline curve is described by the following formula:
      P    ⁡          (      t      )        =            ∑              i        =        1            L        ⁢                  P        i            ⁢                        B          i          p                ⁡                  (          t          )                    
where Pi are checkpoints and Bip is the B-spline basic function Bi of a particular order p which can be calculated using the recursion stated in “A Practical Guide to Splines”, Applied Mathematical Sciences, Springer, 2001 by C. De Boor. In the present method, the order p is advantageously 3, with the result that a cubic B-spline curve is produced. The variable t indicates the distance on the B-spline curve from a zero point on the curve. The use of B-spline curves as compensation curves has the advantage that only a relatively small number of parameters is needed to describe the curve, in particular in comparison with approximation of the curve profile by stringing together straight-line sections. Therefore, this way of describing the compensation curve is particularly well-suited to wireless transmission and efficient use of transmission bandwidth.
In comparison with the existing data format of the simTD D21.4 specification of the communication protocols, http://www.simtd.de, the description of the lanes does not end at the stop line of an intersection. With the aid of the continuous description of the lanes by means of B-splines, the prediction of routes in the unstructured inner region of intersections is improved, particularly in the case of complex inner-city intersections. The specifications made in the simTD D21.4 specification of the communication protocols can be supplemented with the description of B-splines or similar descriptions which describe lanes without interruptions.
The position indications are typically determined with the aid of one or more satellite navigation systems. GPS, Galileo and/or GLONASS, in particular, are possible for this.
The method may also comprise the following steps which are carried out before all other steps: determining those routes from the multiplicity of routes which follow the same lane; reducing the multiplicity of routes to the determined routes, with the result that only these routes are included in the multiplicity of routes. The consideration of intersections and the lane courses there, in particular, is relevant to safety driver assistance systems. At the same time, the vehicles at intersections will choose different maneuvers, for example turning left or right or driving straight ahead. Determining a lane course on the basis of recorded routes only makes sense insofar as all routes considered represent journeys which have carried out the same maneuver. These journeys are therefore considered in isolation.
In one development, the process of determining those routes from the multiplicity of routes which follow the same lane comprises the following for each route: determining whether a position indication of the respective route is in a first predefined position region and a position indication of the same route is in a second predefined position region. At an intersection for example, a first predefined position region may be set to a region in or before the intersection in which vehicles enter the intersection, and a second predefined position region may be set to a region in or before the intersection through which vehicles travel when leaving the intersection. This makes it possible to separate the various possible ways of crossing the intersection (passing through, turning left/right).
In one development, the process of determining the number of checkpoints for the compensation curve comprises the following: dividing the length of the randomly selected route by a predefined divisor length; selecting the number of checkpoints on the basis of the division result. A B-spline compensation curve P requires checkpoints Pi for parameterization. For this purpose, the number of checkpoints must first of all be determined. For this purpose, the present method proposes dividing the length of the randomly selected route by a divisor length kigl. The divisor length kigl can be freely determined and tests of the practice have shown that a divisor length of kigl=15 m provides good results. The divisor length kigl is advantageously in the range of 2 m to 35 m. The division result is advantageously also rounded to the next larger or smaller integer.
In one development, the process of determining the new compensation curve also comprises: for each position indication used: determining the point on the previously determined compensation curve which is at the shortest distance from the respective position indication; determining this point as the base point for the respective position indication. In the formula stated above for the definition of a B-spline, the base points may be indicated by the variable t. A tk is determined for each position indication Mk used. The determination of the respective base points is used as the basis for optimizing the compensation curve, that is to say determining a new compensation curve on the basis of the preceding compensation curve.
In one advantageous development, the process of determining the new compensation curve comprises the multiplication of matrices, at least one matrix of which comprises the individual position indications used. The matrix having the individual position indications used may also be a vector. Vectors are also understood as meaning matrices herein. The multiplication of matrices is a computing operation which can be carried out in a very efficient and rapid manner on computers. One advantage of the presented method lies herein. The compensation curves are calculated in a computationally simple manner. The compensation curve can therefore be determined quickly and cost-effectively. This also simplifies continuous updating of the lane courses determined. Roadworks or similar short-term displacements of the lane courses may therefore be quickly detected and made available to driver assistance systems.
The lane courses obtained may be used for a driver assistance system as a basis for determining whether there is a threat of a collision between a vehicle and another road user; this detected risk can be displayed as a warning. One example of such a driver assistance system is an intersection assistant for avoiding collisions at intersections.
In another aspect, an apparatus comprises electronic computing and storage means, the apparatus being set up to carry out one of the methods presented above, the apparatus being set up such that the storage means store at least the individual position indications used and parameters of a compensation curve. The computing means may be included in a computer and may be a microprocessor, a microcontroller or dedicated circuits. The storage means may be memories from computer technology which are known from the prior art.
Furthermore, in another aspect, a computer program is designed to cause a computer to carry out one of the above methods during its execution.
Other objects, advantages and novel features of the present invention will become apparent from the following detailed description of one or more preferred embodiments when considered in conjunction with the accompanying drawings.
Identical reference symbols relate to corresponding elements throughout the figures.